Yes, add anchors for each item please!
Iâve seen examples of quite a few of these at the office⊠thanks for the comic relief
Iâm somewhat surprised that neither âHail Mary commitâ nor âshotgun commitâ showed up here. The former is an unproven fix with an unknown set of behaviors, enabled at the last possible time before release to distribution â indeed, often as the last change before a tag. As Flutie did before you, heave that mother up, and hope, and pray, and know itâs in every way out of your hands until foo.0.1 can get cut.
Shotgun commits are easy to identify: the commit merges a reasonable fix from another branch, along with a plane in the x and y dimensions of new logging, and a sound server, and the beginnings of i18n structure. A âFore!â or âIncoming!â or even âFIRE IN THE HOLE!!â (when appropriate) in your changelogs is just good common courtesy.
weâll cover tactical and strategic nukes next lesson.
The Egyptian braces came from the âIndian Hill C Style and Coding Standards as amended for U of T Zoology UNIXâ
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.80.5542
I always found it amazing that a university had the time and funds to set up a committee to decide how every department would write their code. Then the only remaining copy is the one maintained by the Zoology department.
ha ha ha⊠very impressive and funny. Especially Egyptian Brackets.
Egyptian brackets are rarely used outside of Java world. I donât like them.
âBreadcrumb Debuggingâ
DoThis()
Write-Host "A"
DoThat()
Write-Host "B"
if (Foo = Bar)
Write-Host "Ca"
else
Write-Host "Cb"
endif
Used in those instances when a real debugger is not available (e.g. scripts, Classic ASP, etc).
Requirewant: A desired feature outside the original scope. Close cousin of the requirement.
@FĂ©lix Cloutier - yes, VC++ also warns about assignment within conditional (based on my experience some years ago with VC++ 6). I was usually advised not to rely on this though, and to phrase conditionals as âif (constant == variable)â as many people do.
âConfessional Debuggingâ when you canât figure out a bug and the moment you explain it to somebody else you know exactly whatâs wrong without them having to say anything.
Would love to add âDangling Indexesâ to the list.
Checking for something like $_SERVER[âHTTPSâ] in an if clause when you connect to the page via http will through a
Notice: Undefined index: HTTPS in language-redirector.php on line 43
Or my personal WordPress favorite: add_filter(âthe_generatorâ, security_remove_version); Which will throw something like:
Notice: Use of undefined constant security_remove_version - assumed âsecurity_remove_versionâ in wp-content/themes/cheapo/functions.php on line 23
It always makes me think of the âdangling participleâ phrase my English teacher used to through out at me in high school. These errors are like unfinished sentences and like low hanging (or dangling) fruit easy to fix.
What a laugh!
Nice jargon, seen many of those. Afraid and ashamed to say that I have made some of those things XD. Nice post, Jeff.
Loved the Yoda Conditions.
Iâve known about that style of coding but never knew that itâs called Yoda Conditions. Nice one. Makes me remember/relate easily.
I also like the Pokemon Exception Handling. Seems like I am abusing it recently. I might have catched a lot of pokemons.
Also, the Jimmy thing is new to me.
A former co-worker had dubbed rubber ducking âThe Elton Methodâ back in the 80âs. He worked for a university data center where there was a guy named âEltonâ who was a great listener. The guy never had the first clue what you were talking about, but he nodded obsequiously and scratched his chin thoughtfully saying, âHmmm!â.
In the process of explaining the problem to him, you would realize how to solve it. We still call it âThe Elton Methodâ and a truly great practitioner can use it with any old brick wall. Donât need an actual person.
We call what is called ârubber duckingâ here, âteddybotâ or âtalking to teddybotâ, which was picked up from me, who based it on having been on a channel where http://home.ccil.org/~cowan/teddybot/ was used.
DDT - âPatient: Doctor it hurts when I do this. Doctor: Donât do that.â Describes an issue that only occurs under the most absurdly improbable conditions.
Table top debugging - When a meeting degenerates into a discussion of the possible causes of a bug by people who have never looked at the code and have no idea what theyâre talking about.
Heisenbug was coined by much-missed Jim Grey, of Fourth Paradigm fame; even better is his companion term for plain ordinary easy to find issues - Bohrbug. Be my hero and add the attribution.
We use âChernobyl codeâ to mean âpull just 1 more control out and then everyone diesâ
Jeff I love you to pieces, but it seems your allergy to all things C continues. K&R didnât use this Egyptian style of braces! In fact, that was what was so different about K&Râs coding style.
http://www.amazon.com/C-Programming-Language-2nd-Edition/dp/0131103628#reader_0131103628
You big goofball
Bleh, at least not for members. My bad!