The Curious Engineer

All blogs / Software / engineering practice

Agile Otter Blog

agileotter.blogspot.com

Tim Ottinger's thoughts on Software Development.

Software / engineering practiceTesting / QAEngineering management / careers

Posts
486 from 6 Oct 2008 to 18 Oct 2026
Posting
monthly (22 in the last year)
Kind
personal blog
Feed
https://agileotter.blogspot.com/feeds/posts/default

2026 21

  1. Speculating on Challenges of Spec-Driven Development
  2. Why redesign doesn't happen (enough)
  3. The Ticket Is Not The Work
  4. Spreadsheets
  5. Eight Code Virtues
  6. Progressive Admission Pattern - story slicing
  7. 2006 "Sooner Not Faster" article
  8. Do agents think you're doing agile wrong?
  9. Sooner - And sooner still
  10. Flow theory in short
  11. The Faros Whiplash and The Systems View
  12. Time for an 8th Virtue: Coherence
  13. Agile, YAGNI, Smaller Steps, Bikes and Automobiles...
  14. Pipeline Gates Calculator
  15. Believing In People
  16. Do You Even Plan, Bro?
  17. Working in Groups: Compromises or Contributions?
  18. The Big Release Downward Spiral
  19. Considering Spec Driven Development
  20. Bash Variable Expansion
  21. Does AI help us care less?

2025 11

  1. I can't test that, it uses STDOUT (Python)
  2. What Shape Should My Code Take? (using FizzBuzz)
  3. A vimrc starter
  4. Convenience Scripts for Projects
  5. Why is working faster not working?
  6. Subjectivity: Who is to say what's right?
  7. A quick note on "At Scale"
  8. Who (the heck) Am I?
  9. How much rework do you WANT?
  10. There is No Automatic Reset for Engineering
  11. Pair Programming Listicle

2024 7

  1. Irresponsibility: Estimates and NoEstimates
  2. Basic Microphone Usage
  3. Profitable Struggle and Unprofitable Struggle
  4. Definition-by-Dysfunction
  5. Listicle on Flow and Teamwork
  6. Fundamentally Wrong
  7. Python Listicle!

2023 3

  1. Leadership.
  2. Choose your Expression: Structural Matching, IF-ELSE, and Dictionaries
  3. CSS Specificity Rundown

2022 5

  1. Code Smells Listicle
  2. What does Tim have against "private" methods?
  3. Splitting Stories - A Resource Listicle
  4. Maximize Value, not Quantity
  5. Can teams be accountable for delivery of features?

2021 4

  1. The inefficiency of tests
  2. FIRST: an idea that ran away from home
  3. Reimagining Work vs Doing The Same Better
  4. Outliving The Great Variable Shortage

2020 4

  1. A Whole Lot Of Nope
  2. Speech Hacks to be More Decisive
  3. Some Covid-19 Information
  4. The Laptop "Problem"

2019 11

  1. Disciplined Breaks, Two Years On
  2. The Coward's Confrontation: Leadership fail
  3. Is It My Fault You Can't Handle The Truth?
  4. Q and A on Velocity, part X
  5. No Common Sense in Agile
  6. The relationship between Agile and Scrum
  7. My favorite Estimates and NoEstimates exchange so far.
  8. Q and A on Velocity, Part IX
  9. Improve Your Unit Testing 12 Ways
  10. Software Development as Buying-A-Thing Or Co-Creating?
  11. Signal-to-Noise: The Workspace Application

2018 21

  1. Q and A on velocity, Part VIII
  2. Q and A on Velocity, part VII
  3. Q and A on Velocity, Part VI
  4. Q and A on Velocity, part V
  5. Q and A on Velocity, Part IV
  6. Q and A on Velocity, part III
  7. Q&A on Velocity, Part II
  8. Don't Be Dreadful
  9. Q&A on Velocity, Part I
  10. The Scatter-Gather Method of Software Development
  11. Peace and Curiosity against Righteous Indignation
  12. Organizational Dysfunction
  13. Agile In A Nutshell
  14. Owner, Renter, Guest, Vandal?
  15. Piecing it together without tests...
  16. Complainers
  17. The world, joyfully shining from a desktop.
  18. The Impossible Every Day
  19. Predictability as Maturity or System?
  20. A little signal-to-noise
  21. How To Be Miserable (or Not)

2017 16

  1. Feeling Safe?
  2. Taking Breaks in a Disciplined Way
  3. Why TDD?
  4. The 5 Ts
  5. Can We Process Our Hurts Without Going To Categories?
  6. A VERY brief note on certification..
  7. There is no such thing as a scrum development team....
  8. Agile Training Roller Coaster
  9. A Surprising Demotivator
  10. The Genie Story
  11. Making people do what we want...
  12. Calibrate Your Dopplegangers
  13. Make People Awesome? Give Them Superpowers!
  14. The Lightweight Tweetstream
  15. The Dev Goal
  16. Getting stuff done.

2016 17

  1. Implicit Time-Based Coupling - Inside a Class.
  2. The Employee's Unapproved Feature
  3. TDD: Start With A Failing Test
  4. For those of you keeping track...
  5. Support Each Other
  6. But In The Real World
  7. Political Correctness and Truth
  8. Heretics of Agile at DSM Agile 2016
  9. 14 Challenges For Agile Adoption
  10. The Curiosity Space
  11. The Relevance Ratio
  12. The Intimidation Cycle
  13. Curiosity over Judgment: getting past defensiveness.
  14. What is "Agile"?
  15. Naming is still hard.
  16. Sarah and Joe Write Features
  17. Naming good is what Position?

2015 40

  1. The Productivity Formula
  2. Plate-Emptying
  3. What is "enterprise"
  4. Dot-Programming your Object Oriented Code
  5. What To Read
  6. Principles for Large Organizations
  7. How Is The "Year of Living Shamelessly" Going?
  8. The Manifesto Didn't Start It All
  9. Confirmation Bias and The Twelve-Day Technical Problem
  10. Making Data Relationships Obvious
  11. Sick of Eating: Planning Stress
  12. Struggling is Not Lying
  13. We Value Things On The Left More....
  14. Singh's Inevitable Avoidance Principle
  15. An End To Dueling Strawmen?
  16. Product Owners Maximizing Value
  17. Workspace improvements from Agile Practices Workshop at Agile 2015
  18. (Revisionist) History of QA Departments
  19. The BS Line
  20. Write Me An Online Agile Tool
  21. The #NoEstimates Hashtag
  22. The Poo-shoe Effect
  23. A Quick Rundown on Performance Appraisals and Reviews.
  24. Taking Back Agile at QConLondon with Ruud Wijnands
  25. Interview at QCon London with Ben Linders
  26. Insincerity and Process
  27. Male Privilege
  28. My Life On The Road
  29. Writing the BDDs... Good Lord, NO!
  30. This is NOT the End.
  31. The Company: Can we talk about it?
  32. Bonus for Productivity?
  33. Too Many Developers?
  34. Individual Work Assignments: Neither Agile Nor Team
  35. Can Scrum Teams Have Managers.
  36. QCon London: Taking back development (Take Agile Back).
  37. On The Agile Manifesto
  38. Agile At Heart?
  39. Sleep and Insight
  40. Smarter Teams

2014 29

  1. Other side of the CAR, not the POST.
  2. Years' End, Years' Begin
  3. Working Well Enough: the Four Questions
  4. My itsy-bitsy contribution to Git
  5. Otter's Law
  6. Wrong naming revisit
  7. What is a Coach?
  8. Preplanning Poker: Is This Story Even Possible?
  9. Microtesting TDD: A Quick Checklist
  10. Your Transition Isn't Very Agile
  11. Programming Is Mostly Thinking
  12. Dave Coplin Reimagines The Office
  13. Christopher Avery and The Responsibility Process (vid)
  14. Getting Through To Each Other
  15. Why Your Code Has So Much Duplication
  16. Being the Remote Programmer - A Reflection
  17. The Good Guilt Trip
  18. Process Improvement Principles
  19. Defending Scrum Against Stupid Arguments
  20. Complicated Conversations Considered Keystone Hazards
  21. Purist, Pragmatist, Iconoclast, Egotist
  22. Agile, Post-agile, Beyond Agile... Where do we go next?
  23. Ignorance + Inspiration = What?!
  24. Can I Start My Software Career As A Scrum Master or Coach?
  25. 3 Ways We Can Revive Agile
  26. I Want Agile Back
  27. David Gray on Russ Ackoff
  28. Agile and Waterfall: More Different Than You Think
  29. Bug Teams v. The Nature Of Defects

2013 31

  1. Asking the Wrong Questions
  2. Parkinson's Law:
  3. Scrum Managers: are they the worst?
  4. TDD: more to know
  5. Safety Journey
  6. Working Agreements
  7. The Interplay of Failure, Learning, and Options
  8. The new project...
  9. Three Steps to Safer Development
  10. Tests and Immersion in Code: The relationship
  11. It Can Still Be Awesome...
  12. Bash function for finding & editing content
  13. Velocity and story point rundown
  14. Pressure To Produce
  15. Wallas' Four Stages of Creative Thought
  16. Invisibility of Process, Visibility of Results
  17. The Best Job They Know How To Do
  18. Agile Documentation
  19. Hoarding Knowledge: sharing enhances productivity
  20. Increasing Effort is Unsafe in Too Many Ways
  21. Misunderstanding Quality
  22. Toward a New Theory of Productivity
  23. Tim's 5 Observations About Estimating
  24. Waste = DOWNTIME
  25. Product Health Rules!
  26. The Agile Genie
  27. Multitasking Considered Less Harmful?
  28. Continual Improvement In A Flash - edits underway
  29. A Personal Note on the Passing of my Father
  30. Continual Improvement Book for Scrum Masters: first public release.
  31. Home IT Suggestions?

2012 31

  1. Continuous Improvement Book
  2. Circling the Drain/Facing the Truth
  3. Code Oddity: Conditionally starting
  4. Robert Probst and the Cubicle Wars (we lost)
  5. TLC Labs Doesn't Do Performance Reviews
  6. A LeanPub book for Scrum Masters?
  7. There is no good way to eat soup with a knife.
  8. Not Fair
  9. Save(d) The Art Of Thought!
  10. Simple v. Complicated
  11. 14 Weird Observations About Agile Team Velocity
  12. Context Driven Testing
  13. Worst case just for moment imagine that
  14. A Round Of Questions
  15. Corporate IT is Often a Jerkwater Town
  16. Flash A Friend
  17. A Process For Naming Tests
  18. TDD for C++ Programmers
  19. Unfair advantages
  20. Agile In A Flash - Bias toward testing
  21. Rewards and Performance Revisit
  22. Retrospectives: What was that about hats, again?
  23. Fish Among Kangaroos: A Leadership Failure Tale
  24. Really TDD-ing: Less simple than you think
  25. The Power of an Agile Mindset
  26. Empathy and Experience: Coaching
  27. Seem, Be, Become - Choose a path.
  28. Chickens with a Pig Complex?
  29. Evil? You tell me?
  30. Affording Agile (Emotionally)
  31. Why not C++ all the time?

2011 73

  1. Join Fresh Start Week 2012
  2. Single-Return, AKA: Elephant-proofing your bathtub
  3. Performance Appraisal Time?
  4. Preserving Wasteful Practices
  5. If We Had Done The Right Thing To Begin With
  6. What should the well-dressed virtualenv wear?
  7. Mercurial team workflow
  8. The First Puzzle Challenge
  9. Python History Visualized
  10. Lean Startup and Efficiency
  11. Linus Torvalds Management Lessons
  12. Agile Coaching Camp wrapup
  13. Agile Coach Camp U.S. - Saturday (#accus)
  14. The Build is Broken, Now What?
  15. Pycon: Examples of Atrocity in Python Programming
  16. Ambient Annunciators
  17. How Do Scrum Masters Know?
  18. Learning from bad examples
  19. Scrum Master Duties
  20. You Cannot Possibly Do TDD after Coding
  21. Poop: The Refactoring Method
  22. Agile2011 Day 4
  23. Free, Cheap, Scheduled: retrospective technique
  24. Agile2011 Day 3
  25. Pairing Styles
  26. Agile2011 Day 2
  27. Agile2011 Day 1
  28. Leadership
  29. Fun with Squish and Python
  30. Microtesting Python Album
  31. Short Reach Revived
  32. Get Back On Track
  33. GOing to Software Craftsmanship McHenry County
  34. Chicago Code Camp 2011
  35. Agile Coaching Stories
  36. Adhesion Example
  37. Organizing Stepwise Considered Harmful
  38. Why Not?
  39. Java's Greatest Hits And Misses
  40. "Managing" Velocity
  41. Overtime on Agile Teams?
  42. My OSS Software (inventory)
  43. Sell Me A Computer?
  44. Fun times in Honeymoon Mode
  45. Industrial Logic
  46. Uncle Bob's Clean Code Video
  47. Make the Retrospective Effective
  48. Agile And Beyond Party
  49. Stop hating on the command line
  50. Python for Everyone At My House
  51. A Fun Teamwork Experiment
  52. Stepping up Django Efforts
  53. Regaining Humility and Thereby Sanity
  54. COTW: Build Superior Systems With Simple Design
  55. Easy flowchart for communicators
  56. Grandpa Tim Tells A Scary Story
  57. Agile Otter Receives Love
  58. Self-Promotion and Resume-writing
  59. The Wicks
  60. 4 Questions Film Project
  61. World's Shortest Agile Summary
  62. The Great Giveaway Begins
  63. Pairing, Competence, and Recognition
  64. Discoveries of the Week
  65. One Video Wrapped Up
  66. Django Unit Test Hobby
  67. Agile In A Flash
  68. Remote Pairing Matters
  69. Reflecting on Being Employed as a Remote Pair Programmer
  70. Observation on Growing Disconnected
  71. Software Talent Agency?
  72. About "Under Test"
  73. Want Your Own Agile Otter?

2010 34

  1. Explaining What I Do For A Living
  2. Where's Tim
  3. Under Test
  4. C# Curiously Nested Production Class
  5. Explaining Refactoring
  6. Heatmap: The new hotness
  7. Tests Are Code
  8. Pair Switching Degrades over Time
  9. Where is the Agile Otter?
  10. Copy And Edit Revisited
  11. Stop Playing Catch And Release In Quadrant 4.
  12. Two Year In, Looking for the Goodies
  13. Do You Want Us To Think Or Not?
  14. Meddling, Oversight, and Agile, Oh My!
  15. Only Quality Matters
  16. Software Like Building A House
  17. Your Reward System Doesn't Work
  18. Mocking Done Badly
  19. Making Stuff is Making Stuff
  20. Linear and Radial Progress: Take The Next Step
  21. Accept changes, not interruptions.
  22. Be Careful What You Fix
  23. Full Test Access With Data Hiding for Production
  24. Even simplified, it can be daunting
  25. When The Test Goes Green
  26. Motivational Speech
  27. Code is not a Car
  28. Career Pathing?
  29. The snowball
  30. Survey Frustrations
  31. Simple V. Clear V. Easy V. Primitive
  32. The Problem Of Copying
  33. Code #region considered harmful
  34. Name it Badly

2009 108

  1. Easy to Use
  2. Pauses
  3. A Waste Of Vertical Space
  4. Tech Upgrades for The New Year
  5. Gratuitous Context
  6. Factors Driving Naming
  7. Code That Makes You Feel Good
  8. Sorry Way to do Business
  9. The Fast Food Chicken Dilemma
  10. Define Leadership for Me
  11. Tragedy of the Doubtful Solution
  12. The main thing you need to know:
  13. The Elusive Code Quality Argument
  14. Becoming More Useful
  15. Software is not to blame
  16. Trainwreck Removal
  17. Reports from the Field
  18. Definition of Expert
  19. After fresh checkout number of tests
  20. Agile is a Management Trick
  21. Long and Short of Naming
  22. Backsliding From Agile to Waterfall
  23. 40 Hours is Unprofessional
  24. The Bottom Of The V?
  25. Avoiding Negative Tim
  26. Platitudes Of Doom
  27. Going Faster
  28. Don't Geocache Your Variables
  29. How Big is a Story Point?
  30. Odd Function Signature
  31. Beany Objects and Busy Code-Behinds
  32. Beany Classes and Busy Methods
  33. Any Road To Rome is Also A Road From Rome
  34. A Good Windows Experience?
  35. Naming or Comment Fail?
  36. The U Controversy
  37. Code Perturbation and Extensive Branch Mods
  38. Anti-IF Campaign
  39. SVN fail most sighted
  40. Preferences On Code Style
  41. Not Fitting In An Iteration
  42. svn and patches don't mix
  43. Culture of Blame
  44. My Story Board is The Same As Yours!
  45. Customer/Vendor Relationship outside of IT
  46. Symmetry and Simplicity on a Monday
  47. Because the biggest single determinant in today’s production is the quality of yesterday’s production.
  48. Esther Derby Promotes Plain, Honest Speaking
  49. Top-down/Bottom-up
  50. Whiteboard
  51. XP Born in Frustration
  52. Velocity
  53. Another C word (Convenience)
  54. Rethinking The C Word (clever)
  55. Cool TDD Antipatterns Appearance on Stack Overflow
  56. Code Patching in Legacy Messes
  57. Calculate the cost of a priority mistake
  58. "Clever"
  59. Remote Pairing with YuuGuu
  60. You Win Some, You Lose Some
  61. Shhhh.. busy!
  62. Remote Pairing Month 3
  63. Mercurial Branching
  64. Find Users of method through inheritor
  65. New Upgrade
  66. Caring About Stupid Stuff
  67. Contractor or Consultant?
  68. First glance: SPE and TDD
  69. Power Of Naming
  70. Probably something stupid...
  71. Do the Right Thing and Get It Done
  72. Windows wants to reboot
  73. Article about readability of exception test
  74. Web Cams
  75. Prioritization
  76. Clean Code Clarification
  77. Three Rules for Code Comments
  78. Remote Pairing Requires Headsets
  79. "called from" boolean variables considered ugly
  80. Bounce Rates
  81. Skype today
  82. Networking problem solved
  83. Conference Calls and Remote Team Members
  84. Gizmo5
  85. XCopy still works
  86. Home Networking
  87. Continuing remote pairing & SQL testing
  88. Stack Overflow #41
  89. Global Variables
  90. More Remote Pairing
  91. Remote Pairing Day 3
  92. Remote Pairing Day 2
  93. Pork Barrel Agile Failure
  94. Agile via Sound Bites
  95. Clean code: Writing Functions
  96. The SOLID principles as motivational posters.
  97. On python not scaling well
  98. Coding your way out of Fear Of Change
  99. Code Doesn't Lie
  100. Looking for interesting work
  101. Bash coolness
  102. James Grenning boils it down
  103. Fear of Changing Code
  104. Shameful Confessions from a small Solo Project
  105. Im becoming esther derby fan partly
  106. Opposite of Despair...
  107. Quick Status
  108. XPairTise problem or am I just being dense?

2008 20

  1. Quality Rant
  2. Put simply
  3. Opportunity Cost & Priority
  4. All Together Now!
  5. Raspberry Jam
  6. Save Your Project
  7. Trickle Effect and Project Publicity
  8. The "D" Word
  9. Where we are.
  10. Unit Test Ice Breakers
  11. Doing Python Wrong
  12. Extreme Measures
  13. Python Pimpl Pattern
  14. Acceptance Test Qualities
  15. Agile Progress and Branching
  16. Branching
  17. Start
  18. Branching as a Coping Mechanism
  19. Transformation by Obviating Coping Mechanisms
  20. Move from ObjectMentor