The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
I'd have like 40 other places I'd also need to declare a one off type.
That's part of the problem with the approach here.
"There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult." - C.A.R. Hoare
Always have an interface with a name starting with IRule. Every time you use it, say out loud "I Rule" - that should boost your self esteem.
There must be other good interface names, e.g. IRockPaperScissors (say "I Rock")
that one obv is simple and can be changed to a switch but once you start adding || and && in there and breaking each subcomparison out on it's own line the difference is clear. yodaized looks better in the source in terms of figuring out what you're doing. The target being on the right makes it less distracting
When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.
The simple answer to avoiding these things is to keep your code simple. The code you show there is complex, you are doing a lot on a single line. I know that grade-schools promote this, but it is not really that ideal when it comes to debugging.
True, I have heard it used by some French and Belgians & French speaking Canadian, but not by a native (UK, USA, New-Zeland, Oz etc.) Interestingly the 'Jack Of All Trades' the quote Jack of All Trades master of none. I always understood it as 'Jack Of All Trades, master of none, more use than master of one'...
I've actually seen that one
And I could care less is very common as well, come on people, how hard is it!?
That said, I didn't recognize about 90% of them, but the ones I did recognize I recognized correctly (except the thing/think)