<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">
	<channel>
		<title>Sweep Away Technical Debt with Trigger’s Broom | Infinum</title>
		<atom:link href="https://infinum.com/blog/sweep-away-technical-debt-with-triggers-broom/feed/" rel="self" type="application/rss+xml" />
		<link>https://infinum.com/blog/sweep-away-technical-debt-with-triggers-broom/</link>
		<description>Building digital products</description>
		<lastBuildDate>Tue, 28 Apr 2026 14:41:35 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>

					<item>
				<image>
					<url>8067https://infinum.com/uploads/2018/11/sweep-away-technical-debt-with-triggers-broom-0.webp</url>
				</image>
				<title>Sweep Away Technical Debt with Trigger’s Broom</title>
				<link>https://infinum.com/blog/sweep-away-technical-debt-with-triggers-broom/</link>
				<pubDate>Thu, 15 Nov 2018 16:35:00 +0000</pubDate>
				<dc:creator>Tomislav Car</dc:creator>
				<guid isPermaLink="false">https://infinum.com/the-capsized-eight/sweep-away-technical-debt-with-triggers-broom/</guid>
				<description>
					<![CDATA[<p>You build technology, but as you cut corners, you incur future costs that you’ll have to pay off eventually—or your project will go bankrupt.</p>
<p>The post <a href="https://infinum.com/blog/sweep-away-technical-debt-with-triggers-broom/">Sweep Away Technical Debt with Trigger’s Broom</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</description>
				<content:encoded>
					<![CDATA[<div
	class="wrapper"
	data-id="es-232"
	 data-animation-target='inner-items'>
		
			<div class="wrapper__inner">
			<div class="block-blog-content js-block-blog-content">
	
<div class="block-blog-content-sidebar" data-id="es-92">
	</div>

<div class="block-blog-content-main">
	
<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-95"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-93">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-94'
	>
	In the past, I’ve written about <a href="https://infinum.com/blog/is-your-business-sinking-into-technical-debt/">technical debt</a>, and how it’s an all-too-common problem with software development projects. In a nutshell, the basic concept of technical debt is this: You build technology, but as you cut corners or optimize for delivery speed, you incur future costs that you’ll have to pay off eventually—or your project will go bankrupt.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-98"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-96">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-97'
	>
	Get it now, pay later</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-101"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-99">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-100'
	>
	<strong>Technical debt</strong> is a lot like taking out a 20-year bank loan to buy a house because you don’t have enough cash to cover it. You know you’ll end up paying more for the house in the long run, thanks to interest, but you’re okay with that. You’re willing to pay more to move into the house today.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-104"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-102">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-103'
	>
	So, how can you pay off technical debt and resolve these problems once and for all? One option is refactoring. <strong>Refactoring is the act of cleaning up your code</strong>, making it better and easier to read and maintain.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-107"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-105">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-106'
	>
	It’s the technical equivalent of reorganizing your closet. You’re not necessarily changing the contents of the closet—you’re just streamlining and putting things in their proper place. This makes it easier for you to quickly find what you need when you need it.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-110"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-108">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-109'
	>
	But how exactly does refactoring work? What’s the best way to approach it?</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-113"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-111">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-112'
	>
	“This needs to be totally rewritten.”</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-116"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-114">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-115'
	>
	It seems as if every time a software developer takes over an existing project, they say something like, <em>“This is the worst code I’ve ever seen. We should just delete everything and start from scratch.”</em></p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-119"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-117">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-118'
	>
	Maybe there aren’t any tests, the code style is out of whack, the libraries are outdated or it’s combination of all of the above.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-122"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-120">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-121'
	>
	<strong>Software developers like to play with the latest and greatest technology.</strong> In large part, that’s why they’re so passionate about their work. Because a software developer holds his craft in high regard, he or she doesn’t like to work on old, crappy tech.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-125"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-123">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-124'
	>
	But if you look at this from a business stakeholder perspective — chances are very slim that you’ll ever get the budget and time to do the BIG REWRITE every engineer is dying to do.<br>There are also other <strong>risks to the BIG REWRITE</strong>. For one, you basically lock up all your resources for a certain amount of time. If X months is your estimate for finishing the rewrite, you effectively don’t produce any new value to your customers for X months.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-128"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-126">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-127'
	>
	Even worse, what usually happens is this:  X months turns into 2X months. Joel Spolsky wrote about this ages ago —<a href="https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/" target="_blank" rel="noreferrer noopener">never rewrite your software</a>.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-131"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-129">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-130'
	>
	So, what can you do?</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-134"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-132">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-133'
	>
	Bring out your broom</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-137"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-135">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-136'
	>
	There’s a popular 90s British sitcom called “Only Fools and Horses.” In the show, a character called Trigger (nicknamed after a horse, mind you), is a street sweeper. In one particular sketch, Trigger talks about how he’s had the same broom for 20 years.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-140"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-138"
	 data-media-type='embed'>

	<div class="embed block-media__embed" data-id=es-139>
	<iframe
		class="embed__iframe block-media__embed-iframe"
		src="https://www.youtube.com/embed/LAh8HryVaeY"
		frameborder="0"
		aria-label="Embed iframe"
		allow="autoplay; accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture;"
		allowfullscreen>
	</iframe>
</div></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-143"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-141">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-142'
	>
	When Rodney asks if he’s actually swept any roads with his 20-year-old broom, Trigger says, <em>“Well, of course! But I look after it well. We have an old saying that’s been handed down by generations of road sweepers: ‘Look after your broom.’ And that’s what I’ve done; I’ve maintained it for 20 years.”</em></p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-146"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-144">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-145'
	>
	He then holds up his broom to show his friends and proudly proclaims, <em>“This old broom has had <strong>17 new heads and 14 new handles</strong> in its time!”</em></p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-149"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-147">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-148'
	>
	Baffled, the waiter asks, <em>“How can it be the same bloody broom, then?”</em> Trigger pulls out an old photograph of himself holding his beloved broom. He responds, <em>“Well, here’s a picture of it. What more proof do you need?”</em></p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-152"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-150">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-151'
	>
	The Ship of Theseus</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-155"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-153">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-154'
	>
	In ancient philosophy, this is also known as the <a href="https://en.wikipedia.org/wiki/Ship_of_Theseus">Ship of Theseus</a> (Theseus’s paradox) – if a ship (or any other object, for that matter) has all of its components replaced, is it still fundamentally the same ship?</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-158"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-156">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-157'
	>
	So, what about a software development project? <strong>If you replace every single component of a software solution, is it still the same solution</strong>? Yes— but it will be a much-improved solution, as long as you take the right approach.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-161"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-159">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-160'
	>
	So, what is the correct approach to refactoring large, legacy systems? It all comes down to replacing smaller systems inside larger, running, systems.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-164"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-162">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-163'
	>
	In other words, you should build out a new framework and new concepts <strong>inside the existing, already running, application</strong>. Construct any new features that you build with this new framework, and try to use the old, crappy parts of the system as little as possible. If you have no other choice, create bridges to the old code in a way that will be future-proof.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-167"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-165">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-166'
	>
	Much like Trigger’s broom, you’re replacing the old, worn-out parts with more functional parts to ensure the solution is well-maintained. Remember those wise words passed down from generations of street sweepers: “Look after your broom!”</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-170"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-168"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-169">
	<picture class="image__picture block-media__image-picture">
								
			<source
				srcset=https://infinum.com/uploads/2018/11/sweep-away-technical-debt-with-triggers-broom-1-1400x840.webp				media='(max-width: 699px)'
				type=image/webp								height="840"
												width="1400"
				 />
												<img
					src="https://infinum.com/uploads/2018/11/sweep-away-technical-debt-with-triggers-broom-1.webp"
					class="image__img block-media__image-img"
					alt=""
										height="846"
															width="1410"
										loading="lazy"
					 />
					</picture>

	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-173"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-171">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-172'
	>
	As part of this process, it’s important to <strong>continuously deploy</strong> this code, <strong>test it</strong> and have users <strong>use it in production</strong>. This is very different from the BIG REWRITE because we’re constantly battle testing our new code, hardening it and creating production-ready code.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-176"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-174">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-175'
	>
	So, we’re not just writing code with a million bugs that will be uncovered once we do the BIG LAUNCH after a year of work. We’re creating new code day after day, and deploying that to production regularly.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-179"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-177">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-178'
	>
	Shiny new code</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-182"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-180">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-181'
	>
	If you use this refactoring approach, this is how <strong>things will unfold over time</strong>: Your codebase will start out with 100% old shitty code and 0% new shiny code.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-185"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-183">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-184'
	>
	As time goes by, you’ll implement new features but using only new and shiny code. So, at this point, you have 90% old crappy code and 10% new shiny code.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-188"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-186">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-187'
	>
	As you keep doing this for all new features, you’ll eventually reach the tipping point where there’s <strong>more shiny code than crappy code</strong>. You can then pull off the BIG REWRITE, which at this point is basically eliminating the rest of the cruft.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-191"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-189">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-190'
	>
	Can it be done?</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-194"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-192">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-193'
	>
	Of course it can! In fact, we pulled it off in 2016 for the core application powering  <a href="https://www.productive.io/?utm_source=infinum.co&amp;utm_medium=referral&amp;utm_campaign=Blog%20Technical%20Debt%20Triggers%20Broom&amp;utm_content=blog-post">Productive</a>, a spinoff business born out of Infinum. We started off with a dated codebase that I personally wrote most of way back when.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-197"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-195">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-196'
	>
	The team took the Trigger’s broom approach, running both systems in parallel, and migrating parts of the architecture as they went along. In other words, they were slowly replacing those old, beaten-up broom parts with shiny new ones.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-200"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-198">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-199'
	>
	We strategized with users by redirecting them to the old parts of the system until they were rewritten completely. We ran two parallel JSON APIs until we didn’t need the old one anymore.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-203"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-201">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-202'
	>
	We chopped off small pieces of the old Productive here or there and extracted it to different microservices. We built the entire frontend on a completely new tech stack. Of course, the specs changed along the way, based on the business or user expectations, and that was fine. <strong>We weren’t stuck in rewrite hell, and we were shipping to production all the time.</strong></p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-206"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-204">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-205'
	>
	Like Trigger’s beloved broom, we now have an application that’s basically the same from a business perspective — it’s still called Productive, and it still does the same thing (manages your agency workflow)— however it’s well-maintained and greatly enhanced.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-209"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-207"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-208">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2018/11/sweep-away-technical-debt-with-triggers-broom-2.webp"
					class="image__img block-media__image-img"
					alt=""
										height="800"
															width="1400"
										loading="lazy"
					 />
					</picture>

	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-212"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-210">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-211'
	>
	Today, there’s not a single line of code in Productive from that old and dated codebase that I wrote. And believe me, this is a good thing— because I wrote pretty shitty code compared to today’s standards.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-215"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-heading" data-id="es-213">
	<h2	class='typography typography--size-52-default js-typography block-heading__heading'
	data-id='es-214'
	>
	Eating elephants</h2></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-218"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-216">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-217'
	>
	The next time you take over a dated or legacy codebase, and your inner instincts start saying, “Let’s just rewrite all of this,” try to change your mindset.</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-221"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-219">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-220'
	>
	Ask yourself, “How can I add value, piece by piece, and replace certain parts of it, to make sure it will get better and better over time?”</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-224"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-media">
	<div	class="media block-media__media media__border--none media__align--center-center"
	data-id="es-222"
	 data-media-type='image'>

	<figure class="image block-media__image-figure image--size-stretch" data-id="es-223">
	<picture class="image__picture block-media__image-picture">
												<img
					src="https://infinum.com/uploads/2018/11/sweep-away-technical-debt-with-triggers-broom-3.webp"
					class="image__img block-media__image-img"
					alt=""
										height="482"
															width="547"
										loading="lazy"
					 />
					</picture>

			<figcaption class="image__figcaption block-media__image-figcaption">
			 (photo: seangallo.com)		</figcaption>
	</figure></div></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-227"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-225">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-226'
	>
	It’s just like that old saying: “How do you eat an elephant? One bite at a time.”</p></div>	</div>

<div
	class="wrapper wrapper__use-simple--true"
	data-id="es-230"
	 data-animation='slideFade' data-animation-target='inner-items'>
		
			<div class="block-paragraph" data-id="es-228">
	<p	class='typography typography--size-16-text-roman js-typography block-paragraph__paragraph'
	data-id='es-229'
	>
	(But please, don’t eat elephants. They’re extraordinary animals.)</p></div>	</div>
</div>
</div>		</div>
	</div><p>The post <a href="https://infinum.com/blog/sweep-away-technical-debt-with-triggers-broom/">Sweep Away Technical Debt with Trigger’s Broom</a> appeared first on <a href="https://infinum.com">Infinum</a>.</p>
]]>
				</content:encoded>
			</item>
		
	</channel>
</rss>