Logo

dev-resources.site

for different kinds of informations.

An Iterative Lifestyle

Published at
12/14/2020
Categories
iteration
development
programming
failure
Author
rfornal
Author
7 person written this
rfornal
open
An Iterative Lifestyle

Iterative Failure

I started this article by writing about "iterative failure," a process of failing forward, fast and often. What I realized is that most development is about the ITERATIVE process and much less about the failure.

About Failure

"Failure is not an option" is attributed to Gene Kranz, flight director of Gemini, Apollo, and Space Shuttle missions. Gene Kranz confirmed in an interview, that this sentence was made up for the film Apollo 13. But he liked it so much that he used it as the title for his memoirs and autobiography.

Became ...

Fail early, fail often, but always fail forward.”
― John Maxwell, Failing Forward

FAILURE: It is a harsh word. No one enjoys failure. Yet failure is an inevitable part of human existence. Without failure there is little forward progress; Without failure, innovation is rather incremental; Without failure, there is no reason to celebrate success.

Failure in development is reframed as intentional iteration and experimentation. It is not a failure in the catastrophic sense. Failure is simply a series of setbacks, false starts, wrong turns, and mistakes that are expected and tolerated because the developer purposefully iterates over code variations finding new and better ways to frame the concepts. Through iteration, developers seek to make the code better, and this happens through an anticipated cycle of pivoting and adapting.

  • Conduct early and frequent experiments with code to test parts of the idea.
  • Reflect on what was learned from the iteration and determine how to integrate the learning into the next iteration.
  • Let others in the developer network know about the iteration because they will be a good source of information and feedback.

Intentional Iteration

Development is NOT about failure or failing repeatedly. We need to have a shift from a success/failure mentality to an iterative design mentality. What we as developers (using Test Driven Development) are doing is ...

  • Developing a means of testing the code (for some aspect no already in the design)
  • Writing code to pass the test
  • Verifying the test covers the code correctly

Then, we begin another ITERATION if the results are not what was expected.

I’ve talked about this as dealing with failure, but just recently realized that many of us are simply viewing an iterative process as a repeated failure; not focusing on the goal of solving a problem.

In science and art, the iterative process is a cornerstone of learning, creating, and moving forward.

On the smallest scale, do we fail when a function does not work as expected? NO; we’ve written code that needs adjustment.

On a larger scale, do we fail when some part of the system does not work right? Users do not come back saying the system has failed. It simply does not work as expected.

In both cases, some code gets reworked ... not left in a broken state. There is no failure, only another layer of iteration.

failure Article's
30 articles in total
Favicon
Story of a failed entrepreneur
Favicon
Embracing Failure - The Pathway to Success
Favicon
How a 2% Failure Turned into a Success: My CKS Exam Experience
Favicon
Making Releases Routine
Favicon
AWS Lambda Functions Failure Management
Favicon
How I Passed both AWS Professional Exams in 6 Months & Tips on how you can TOO!!!
Favicon
Why side projects die so quickly ...
Favicon
The Smile that Conquers Failure
Favicon
The Answer to Life, the Universe, and Project Estimate Failure (Spoiler: It's Not 42)
Favicon
Failure - An Opportunity to Learn and Grow for Software Developers
Favicon
Postmortem reports: How to get the most from failure for massive growth
Favicon
What is Design for Failure?
Favicon
Conquer Your Fear from a Failed Job Interview in 7 Simple Steps
Favicon
Dirty Reads in Oracle Database (is Oracle ACID across failure?)
Favicon
I failed my AWS exam, but I gave it my best shot. Tips for Exam Retakes.
Favicon
The True Costs of a Startup Failing
Favicon
It is Time For App Security Questions To Die
Favicon
How Dark Souls Helps You To Think About Failure
Favicon
Failing Digital Ocean Kubernetes Challenge
Favicon
Setting Yourself Up for Failure: Failing Better
Favicon
Setting Yourself Up for Failure: Culture
Favicon
Setting Yourself Up for Failure: My Epic Fails
Favicon
Dennis Traub failed his way to success... and other things I learned recording his DevJourney (#133)
Favicon
An Iterative Lifestyle
Favicon
SSRS Access woes
Favicon
Shattered or How to bomb interviews as a senior developer
Favicon
Three Unconventional Ways to Measure Value
Favicon
$50 coupon contest: Share your #FML moments to win
Favicon
Lambda Functions Are NOT Fault-Tolerant by Default
Favicon
Should comments in code be considered failures in coding?

Featured ones: