TransWikia.com

Is there a word to describe the situation when a system that you created yourself surprises the author?

English Language & Usage Asked by Kashmir W. on September 25, 2020

I just thought that there would be a bunch of errors logged in my system, because it seemed as if two files with the same path and filename were being saved at the same time, conflicting with each other.

Then I noticed that one of the files got saved as name_1.png instead of name.png. From my foggy memory, I vaguely recall having encountered this problem in the past, and apparently, I coded in this feature to handle the situation. I had entirely forgotten about it and can’t even immediately find where in the massive codebase this actually occurs.

This is not the first time that this happens to me in this vast system I’m programming, which has been ever growing for years in complexity.

Basically, it’s now a nightmare to attempt to go through all of it, so I always have like a "fog" around large parts except those I’ve recently been interacting with directly. There’s a lot of "mystery functions" which interact with each other in ways I’ve long forgotten how I originally intended them to work, and they have slowly evolved to be quite robust and "well-oiled", so to speak.

Could this be called something more accurate than the overused "ironic"? I feel as if there’s probably an English word which describes such a complex system which surprises the author due to having forgotten that they made a specific feature, long after it’s been implemented and tested and then forgotten about like an old legend or myth.

One Answer

Synergy

Welcome! Good question and well stated, believe it or not. The classic professional programmer term for this is in two words. The first describes a group or cluster of items. The second word describes one sort of penetration or another, it can vary considerably but is always biological.

What you are searching for is a word describing the unexpected result of your efforts. The word is Synergy. This means that the initial conditions or expectations have gone into business for themselves, beyond your expectations. Normally this describes a positive outcome. For your efforts there is a ways to go yet.

The problem with your previous efforts is easily explained which means difficult to execute. This is why so few manage it. As much as I see Object Oriented Programming over used down to the trivial case it is still the method of choice. That and careful documentation. A simple note right there to Future You or your compatriot would give you just the hint you understood back then so well but cannot fathom now.

From where you are Now!: Work to break up a copy of your one large module into smaller components, each with fewer functions than before. Eventually each part will serve one and only one task. This will take time but doing this will help you isolate the odd behaviors and replace them with better code.

Otherwise each time you understand what the code it actually doing Make A Comment Right There. You will no doubt return to this place wondering how and why. The connections need mapping.

Good luck and let us know what progress you make.

Answered by Elliot on September 25, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP