Defuse the IF Strategy

Unleash Adaptive Code!

About Anti-IF Enroll in the workshop Schedule your session

Ready to Break the Chains?

What Is Anti-IF Programming?

Originated by Francesco Cirillo in 2007, the Anti-IF Programming approach has transformed how many perceive IFs and conditionals in software design. 

At the heart of software design lies a simple yet potentially dangerous tool: the conditional 'IF' statement. Undeniably foundational, its use to handle changes in a growth context, dubbed the "IF Strategy", can be a silent saboteur, complicating code and tangling logic. The IF Strategy can lead to debugging problems, never-delivered user stories, technical debt, entangled design, frictions in the team and other inefficiencies. In essence, the IF Strategy can escalate costs and delay software delivery times while degrading internal quality.

Why Was It Started?

A quote or short snippet from Francesco Cirillo: "Hey everyone! I'm Francesco Cirillo. Today, I want to share how a tiny 'IF' changed software design forever."

Join the Movement

  • IF-Skeptic (Supporter): Start your journey with foundational principles.
  • Conditional Commander: Command complex codebases with advanced Anti-IF strategies.
  • Boolean Sovereign: Lead with unparalleled mastery against the Code Monsters.

Who Is It For?

  • Software Developers (Junior and Senior)
  • Project and Tech Leaders
  • Software Quality Assurance Specialists

Get Started

Workshops

December 18-19, 2024

2D Text-Based Breakout Game Workshop

Defusing the IF Strategy in Collision Detection

One of my personal challenges—something I’ve been mulling over for years—is collision detection. We all know classic 2D games like Mario and Space Invaders. And if you think about it, the real magic, the moment that makes you cheer for Mario or brace yourself in Space Invaders, comes down to one thing: collision detection. Without it, there’s no game.

2D Text-Based Breakout Game Workshop

January 22-23, 2025

2D Web Breakout Game Workshop

Reusing Objects to Evolve from Console to Web

When I decided to create this workshop, I thought about all the times I’ve seen developers face the same dilemma: a product needs to evolve, maybe to a new platform or a different interface, and suddenly, the easy path looks like either starting from scratch or piling up conditional code to handle each variation. “If it’s a console game, do this; if it’s the web, do that.” Soon, you’re buried in a stack of if statements, and every change costs more time, more testing, and more bugs.

2D Web Breakout Game Workshop
Mentoring

Programming with Francesco

Embark on a programming journey tailored just for you. From guidance on a current project, dreaming of starting something new, or refining your existing codebase, Francesco's deep-rooted expertise will illuminate your path.

Break the Chains of Conditionals!

Testimonials

Carlo Garatti

"If your question is about how to write valuable software, this program is for you!! Through one-on-one lessons with Francesco you will learn how to fit the right techniques and tools in the exact phases of the software development cycle. You will fix and apply these ideas in real cases. And, last but not least, in an enjoyable way!"

Alessandro Ruzzon

"What did I like the most? In this workshop the theory part matches up with the practical part. You don't only hear WHAT TO DO but also HOW TO DO IT, and you start practicing it right away in the labs! That's really what the Workshop is about: real-life practice aimed at consolidating theoretical notions. This approach helps in understanding problems"

Become the developer you want to be