Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Monthly Meltdowns to Daily Deploys: Taming...

From Monthly Meltdowns to Daily Deploys: Taming Legacy ColdFusion with Feature Flags - CFSummit 2026

These are the slides from the talk given at the Adobe ColdFusion Summit 2026 in Las Vegas (USA) on June 23, 2026.
The demo files are available on https://github.com/WeAreNorth/presentation-feature-flags.
---

Stop letting legacy “spaghetti code” dictate your release schedule. Learn how we used Feature Flags to transform a fragile ColdFusion app into a high-velocity machine—moving from stressful monthly deployments to confident daily releases using CFML, Unleash, and instant “kill switches.”

Every ColdFusion developer has been there: you’re tasked with updating a legacy codebase where a single change in a CFC might unexpectedly break a scheduled task or a reporting module miles away. The result? “Deployment Anxiety” and a release calendar that moves at a snail’s pace.

In this session, I will share our team’s journey of breaking free from the “Big Bang” release cycle using Feature Flags. We will walk through the evolution of our strategy—starting with a simple, homegrown CFML database toggle and eventually scaling to a sophisticated implementation using Unleash.

Key takeaways from this session include:

- The “Safety Net” Strategy: How to wrap high-risk code in flags to ensure you can “kill” a failing feature in milliseconds without a rollback.
- Testing in Production: Why the best staging environment is actually production (if you have the right toggles in place).
- The Homegrown vs. Pro Debate: A look at our migration from a custom FeatureService.cfc to an enterprise flag management platform.
- Gradual Rollouts: How to release a new module to 5% of your users to monitor performance before a global launch.
- Practical CFML Examples: See code snippets of how to implement flag checks within your logic and how to handle “flag debt” so your code stays clean.

Whether you are maintaining a 15-year-old legacy app or building a modern CFML API, you’ll leave this session with a roadmap to release faster, safer, and with significantly less stress.

Avatar for Guust Nieuwenhuis

Guust Nieuwenhuis

June 24, 2026

More Decks by Guust Nieuwenhuis

Other Decks in Programming

Transcript

  1. About me Guust Nieuwenhuis Managing Partner @ We Are North

    Full Stack Web Wizard Lead Dev for Masa CMS Drums/Percussion Mountainbiker CFSummit 2026 2
  2. Who this is for Legacy CF maintainers Modern CFML/API teams

    Anyone carrying release risk CFSummit 2026 3
  3. Core transformation Before: deploy only when we can survive blast

    radius After: deploy when code is ready, control risk at runtime CFSummit 2026 4
  4. Deployment stress loop Fear → bigger batches → riskier releases

    → more fear Photo by Bradyn Trollip on Unsplash CFSummit 2026 9
  5. Opening incident Database lock bottleneck Timeouts in production Bad user

    experience Photo by iSawRed on Unsplash CFSummit 2026 10
  6. Phase 1: boolean flags in CFML Local and simple No

    external dependencies <cfif flag eq true> #new# <cfelse> #old# </cfif> CFSummit 2026 12
  7. Demo: simplest flag Before/after code path One visible UI difference

    Local deterministic toggle CFSummit 2026 13
  8. Phase 2: env-driven flags Flags in AWS Parameter Store Operationally

    better than hard-coded booleans Still deployment-coupled CFSummit 2026 14
  9. Phase 3: session-level tester control Enable per tester session Validate

    high-risk paths early Reduce coordination delays CFSummit 2026 16
  10. Migration decision framework Stay homegrown if scope is narrow Migrate

    when targeting/governance/scale demand it Use fit, not hype, as decision rule CFSummit 2026 19
  11. Why Unleash Open, flexible, team-friendly model Good fit for our

    constraints OSS available; we use hosted Not positioned as "the one true tool" CFSummit 2026 20
  12. Demo: Unleash in action Open app Flip flag in Unleash

    Refresh app See behavior change without redeploy CFSummit 2026 21
  13. Progressive rollout pattern 5% users → observe 25% users →

    validate metrics 100% rollout when confidence is high Photo by Imagine Buddy on Unsplash CFSummit 2026 22
  14. Tenant-specific production fix Deploy fix behind a feature flag Enable

    only for affected tenant Tenant confirms the fix Roll out to all users CFSummit 2026 23
  15. Demo: Unleash targeting strategies Progressive rollout strategy in Unleash Tenant-specific

    targeting strategy Move from limited scope to broader rollout CFSummit 2026 24
  16. XSS refactor story Multi-sprint security refactor Shipped behind one governed

    flag Incremental validation before global enable CFSummit 2026 25
  17. Results: confidence first 1) Confidence up 2) Release frequency up

    3) Failure impact down 4) Lead time down Photo by Luke Helgeson on Unsplash CFSummit 2026 28
  18. Governance contract Decide in refinement: flag or no flag Flag

    type Naming convention Shared ownership (Dev + BA) Tech lead oversight Cleanup cadence CFSummit 2026 31
  19. Lifecycle example Create flag + removal ticket Monitor behavior and

    outcomes Remove flag when stable CFSummit 2026 32
  20. Debt prevention by design Centralized XSS wrapper CFC One abstraction

    boundary Localised cleanup CFSummit 2026 33
  21. Anti-patterns to avoid No owner No expiry Permanent "temporary" flags

    Scattered checks in business logic Photo by Jon Tyson on Unsplash CFSummit 2026 34
  22. First-week action Pick one risky code path Wrap it in

    a feature flag Assign owner + expiry today CFSummit 2026 35
  23. One more thing: AI-assisted coding needs feature flags even more

    AI-generated code can vary in quality Ship behind flags while validating behavior Keep rollback path and feature flag mandatory Photo by Igor Omilaev on Unsplash CFSummit 2026 36
  24. Inspiration and further reading Ben Nadel's Feature Flags book Ben's

    blog posts on practical CFML usage Unleash docs for runtime patterns CFSummit 2026 37
  25. Q&A Who here already uses feature flags? Any story where

    something went wrong and flags might have helped? Any questions? CFSummit 2026 38